package modelo;

import java.util.ArrayList;

/**
 * Created by Usuario on 02/11/2014.
 */
public class MatrizComparacionAlternativas extends MatrizBase{

    public MatrizComparacionAlternativas() {
    }

    public MatrizComparacionAlternativas(ArrayList<Item> itemsComparados) {
        super(itemsComparados);
        inicializarMatriz();
    }

    @Override
    public ArrayList<Double> calcularPesosRelativos() {
        ArrayList<Double> divisores = this.sumarFilasColumnas(true);
        ArrayList<Double> pesosRelativos = new ArrayList<Double>();

        for (Item c : itemsComparados) {
            int indDivisores = 0; // Indice para ir pasando los divisores.
            double pesoRelativo = 0; //Acumulador de peso relativo para almacenar en el array.
            for (Comparacion comp : matrizBase) {

                if (comp.getPrimerTermino() == c) {
                    pesoRelativo += comp.getPuntaje() / divisores.get(indDivisores);
                    indDivisores++; //Paso al proximo array de divisores.
                }
            }
            pesoRelativo = pesoRelativo/itemsComparados.size();
            pesosRelativos.add(pesoRelativo);
        }

        return pesosRelativos;
    }

    public Item getItemAt(int indice) {
        return itemsComparados.get(indice);
    }


}
